home *** CD-ROM | disk | FTP | other *** search
/ Scene Storm / Scene Storm - Volume 1.iso / coding / asm / demos / outcastmag / includes / dotplot_initcode_c.src < prev    next >
Text File  |  1980-01-06  |  1KB  |  80 lines

  1. *---------------------------- DOT PLOTTER INITIALIZE CODE -----------------*    
  2.  
  3.     movem.l a0-a6/d0-d7,-(a7)
  4.     move.l #yoffsets,a2
  5.     moveq #0,d0
  6.     move.w #166-1,d7
  7. yofflp    move.w d0,(a2)+
  8.     add.w #84,d0
  9.     dbf d7,yofflp
  10.  
  11.     move.l #firstscreen,a2
  12.     move.w #13943,d7
  13. wipefs    clr.w (a2)+
  14.     dbf d7,wipefs
  15.     move.l #dot_vars,a2
  16.     move.w #15,d7
  17. wipedv    clr.w (a2)+
  18.     dbf d7,wipedv
  19.  
  20.     move.w #pack_number,d0
  21.     move.l #dotblock+6,a2
  22.     move.l #figfont,a3
  23.     lsr.w #4,d0
  24.     add.w d0,a3
  25.     moveq #7,d7
  26. ffloop1    move.b (a3),d2
  27.     lsl.w #8,d2
  28.     lsr.w #3,d2
  29.     move.w d2,(a2)
  30.     add.w #8,a2
  31.     add.w #10,a3
  32.     dbf d7,ffloop1    
  33.  
  34.     move.w #pack_number,d0
  35.     move.l #dotblock+7,a2
  36.     move.l #figfont,a3
  37.     andi.w #$f,d0
  38.     add.w d0,a3
  39.     moveq #7,d7
  40. ffloop2    move.b (a3),d2
  41.     lsr.b #2,d2
  42.     or.b d2,(a2)
  43.     add.w #8,a2
  44.     add.w #10,a3
  45.     dbf d7,ffloop2    
  46.  
  47.     move.l #dotblock,a2    
  48.     move.l #bytearray,a3
  49.     moveq #7,d4    ;8 lines height
  50. lineloop    moveq #3,d6    ;4 words wide
  51. pclp2    move.w (a2)+,d5
  52.     moveq #15,d7
  53. pllp2    btst d7,d5
  54.     beq.s nopoint2
  55.     move.b #1,(a3)+
  56.     dbf d7,pllp2
  57.     bra nline2
  58. nopoint2    clr.b (a3)+
  59.     dbf d7,pllp2
  60. nline2    dbf d6,pclp2
  61.     dbf d4,lineloop
  62.  
  63.     move.l #dot_vars,a1
  64.     move.w #0,spread1(a1)
  65.     move.w #180+(cornerangle/2),dots_rotation_ang(a1)
  66.     move.w #0,spread2(a1)
  67.     move.w #160,originx(a1)
  68.     move.w #166/2,originy(a1)
  69.  
  70.     move.w #$26,xrad1(a1)
  71.     move.w #$2a,yrad1(a1)
  72.     move.w #$30,xrad2(a1)
  73.     move.w #$20,yrad2(a1)
  74.     move.w #$06,adddeg1(a1)
  75.     move.w #$016e,adddeg2(a1)
  76.  
  77.     movem.l (a7)+,a0-a6/d0-d7
  78.  
  79. *-------------------------------------------------------------------------
  80.